package org.broadway.interfaces;

/***
 * The Context interface is provided as a generic way to transfer data
 * between components and processes to maintain values within the same scopes.  
 * Implementation of the the context should be light and provide a 
 * mechanism to store and retieve values stored in a dictionary structure.
 * 
 * @author vmatters
 *
 */
public interface Context {
	/**
	 * This method stores a value within the context.
	 * @param key - an identifying value for the stored object.
	 * @param value - the actual value to store.
	 */
	public void putValue(Object key, Object value);
	
	/**
	 * Retrives object from the context using the key.
	 * @param key
	 * @return
	 */
	public Object getValue(Object key);
	
}
